COBOL-এ SORT CONTROL FILES এর মাধ্যমে রিপোর্ট প্রক্রিয়াকরণ
COBOL-এ SORT স্টেটমেন্টটি ডেটা ফাইলের মধ্যে রেকর্ড সাজাতে এবং পরে রিপোর্ট প্রক্রিয়া করতে ব্যবহৃত হয়। SORT CONTROL FILES ফিচারটি আপনাকে ডেটা ফাইলগুলো সাজানোর সময় নিয়ন্ত্রণ দেয় এবং বিভিন্ন ধরনের রিপোর্ট জেনারেশন করতে সহায়ক হয়। বিশেষত রিপোর্ট তৈরি করতে ডেটা ফাইল সাজানো এবং সেগুলোর উপর ভিত্তি করে প্রক্রিয়াকরণ করার জন্য SORT ফাইল ব্যবহার করা হয়।
SORT CONTROL FILES এবং রিপোর্ট প্রক্রিয়াকরণের মূল ধারণা:
SORT CONTROL FILES দ্বারা আপনি নিম্নলিখিত কাজগুলো করতে পারেন:
- ফাইলের ডেটা সাজানো (ascending বা descending অর্ডারে)।
- ডেটা ফাইলের মধ্যে নির্দিষ্ট ফিল্ড বা রেকর্ডের উপর ভিত্তি করে ডেটা সাজানো।
- রিপোর্ট ফরম্যাটে সাজানো ডেটা আউটপুট করা।
SORT স্টেটমেন্টের গঠন:
SORT file-name
ON ASCENDING KEY key-field
USING input-file
GIVING output-file.file-name: এটি সেই ফাইলের নাম যেটি আপনি সাজাতে চান।ON ASCENDING KEY: এটি নির্দেশ করে যে ডেটা ascending অর্ডারে সাজানো হবে (অথবাDESCENDING KEYব্যবহার করলে ডেটা descending অর্ডারে সাজানো হবে)।key-field: এটি সেই ফিল্ড বা ডেটার ক্ষেত্র যা আপনি ব্যবহার করে সাজাতে চান।USING input-file: এটি নির্দেশ করে যে কোন ইনপুট ফাইল থেকে ডেটা আসবে।GIVING output-file: এটি নির্দেশ করে যে সাজানো ডেটা কোন ফাইলে যাবে।
SORT CONTROL FILES এর উদাহরণ
উদাহরণ ১: রিপোর্ট ফাইল সৃষ্টির জন্য SORT ফাইল ব্যবহার
01 CUSTOMER-RECORD.
05 CUSTOMER-ID PIC 9(5).
05 CUSTOMER-NAME PIC X(30).
05 CUSTOMER-AGE PIC 99.
01 SORTED-CUSTOMER.
05 CUSTOMER-ID PIC 9(5).
05 CUSTOMER-NAME PIC X(30).
05 CUSTOMER-AGE PIC 99.
SELECT SORTED-FILE ASSIGN TO 'SORTED.DAT'.
SELECT INPUT-FILE ASSIGN TO 'CUSTOMERS.DAT'.
PROCEDURE DIVISION.
OPEN INPUT INPUT-FILE
OPEN OUTPUT SORTED-FILE
SORT SORTED-CUSTOMER
ON ASCENDING KEY CUSTOMER-AGE
USING INPUT-FILE
GIVING SORTED-FILE.
CLOSE INPUT-FILE
CLOSE SORTED-FILE.
STOP RUN.ব্যাখ্যা:
- এখানে
INPUT-FILEএকটি ইনপুট ফাইল যাCUSTOMERS.DATনামের ডেটা ফাইল থেকে গ্রাহকের তথ্য ধারণ করছে। SORTED-FILEহলো একটি আউটপুট ফাইল যেখানে সাজানো গ্রাহকদের তথ্য থাকবে।ON ASCENDING KEY CUSTOMER-AGEনির্দেশনা দিয়ে গ্রাহকদের বয়সের (age) ওপর ভিত্তি করে ডেটা সাজানো হচ্ছে। প্রথমে সবচেয়ে কম বয়সের গ্রাহক থেকে সাজানো হবে।USINGএবংGIVINGফাইলের মাধ্যমে ইনপুট এবং আউটপুট ফাইলগুলো উল্লেখ করা হয়েছে।
এটি একটি সহজ উদাহরণ যেখানে গ্রাহকের বয়সের ওপর ভিত্তি করে ডেটা সাজানো হচ্ছে।
SORT এর সাথে অতিরিক্ত অপশনসমূহ
Multiple Sort Keys: একাধিক ফিল্ড বা কনডিশন ব্যবহার করে ডেটা সাজানো।
SORT file-name ON ASCENDING KEY key1, key2 USING input-file GIVING output-file.- এখানে
key1এবংkey2দ্বারা ডেটা দুটি ফিল্ডের ওপর ভিত্তি করে সাজানো হবে।
- এখানে
Handling Duplicate Records: ডুপ্লিকেট রেকর্ডগুলি ম্যানেজ করা।
SORT file-name ON ASCENDING KEY key-field USING input-file GIVING output-file REMOVE DUPLICATES.REMOVE DUPLICATESব্যবহার করলে ডুপ্লিকেট রেকর্ডগুলি সরানো হবে।
Reversing Sort Order: ডেটা উল্টো অর্ডারে সাজানো।
SORT file-name ON DESCENDING KEY key-field USING input-file GIVING output-file.DESCENDINGব্যবহার করলে ডেটা উল্টো অর্ডারে (descending order) সাজানো হবে।
Rerun বা REWRITE করার জন্য SORT
COBOL-এ SORT অপারেশন মূলত নতুন সাজানো ডেটা আউটপুট করার জন্য ব্যবহৃত হলেও, আপনি REWRITE ব্যবহার করে ডেটা আপডেটও করতে পারেন।
উদাহরণ:
SORT file-name
ON ASCENDING KEY key-field
USING input-file
GIVING output-file.
REWRITE record-name.ব্যাখ্যা:
- এই ক্ষেত্রে
REWRITEস্টেটমেন্টটি দিয়ে নতুন সাজানো রেকর্ডগুলিকে আপডেট করা হচ্ছে।
রিপোর্ট প্রক্রিয়াকরণের জন্য SORT স্টেটমেন্ট
COBOL-এ রিপোর্ট তৈরি করতে SORT স্টেটমেন্টটি খুবই কার্যকরী। বিভিন্ন ধরনের ডেটা সাজানো এবং তারপর সেগুলিকে ফরম্যাটে আউটপুট দেওয়া সম্ভব হয়। উদাহরণস্বরূপ, ব্যবসায়িক রিপোর্ট, পেমেন্ট রিপোর্ট, স্টক রিপোর্ট ইত্যাদি তৈরি করতে SORT স্টেটমেন্ট ব্যবহার করা যেতে পারে।
সারসংক্ষেপ
| অপারেশন | বর্ণনা |
|---|---|
| SORT | একটি ফাইলের রেকর্ড সাজাতে ব্যবহৃত হয়, সাধারণত ইনপুট ফাইলের উপর ভিত্তি করে। |
| ON ASCENDING KEY | নির্দিষ্ট কী এর উপর ভিত্তি করে ডেটা সাজানো (ascending বা descending order)। |
| USING | ইনপুট ফাইল ব্যবহার করা হয়, যা ডেটা আসবে। |
| GIVING | সাজানো ডেটা আউটপুট ফাইলে দেওয়া হয়। |
| REMOVE DUPLICATES | ডুপ্লিকেট রেকর্ড সরানোর জন্য ব্যবহৃত। |
SORT CONTROL FILES এর মাধ্যমে COBOL-এ ডেটা সাজানো এবং রিপোর্ট প্রক্রিয়া করা অত্যন্ত সহজ এবং কার্যকর। এটি ফাইলের ডেটা সাজানোর জন্য শক্তিশালী এবং দ্রুত উপায় প্রদান করে।
Read more